#include "widget.h"
#include "ui_widget.h"
#include <QPixmap>
#include <QSize>
#include <QDebug>
#include <QResizeEvent>
#include <QRadioButton>
#include <QLCDNumber>
#include <QProgressBar>

Widget::~Widget()
{
    delete ui;
}

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
}

//槽函数
//当日期被选择时，显示所选择的内容
void Widget::on_calendarWidget_selectionChanged()
{
    QDate date = ui->calendarWidget->selectedDate();
    qDebug() << date;
    ui->label->setText(date.toString());
}


//Widget::Widget(QWidget *parent)
//    : QWidget(parent)
//    , ui(new Ui::Widget)
//{
//    ui->setupUi(this);
//    //设置最大最小值
//    ui->progressBar->setMinimum(0);
//    ui->progressBar->setMaximum(100);
//    //设置当前值
//    ui->progressBar->setValue(0);
//    ui->progressBar->setFormat(QString("%p"));

//    //使用定时器，实现进度条移动效果
//    qTimer = new QTimer(this);
//    connect(qTimer,&QTimer::timeout,this,&Widget::UpdateTime);
//    qTimer->setInterval(100);
//    qTimer->start();
//}

//void Widget::UpdateTime()
//{
//    qDebug() << "UpdateTime";
//    int value = ui->progressBar->value();
//    if(value >= 100)
//    {
//        qTimer->stop();
//        return;
//    }
//    ui->progressBar->setValue(value + 1);

//}


//Widget::Widget(QWidget *parent)
//    : QWidget(parent)
//    , ui(new Ui::Widget)
//{
//    ui->setupUi(this);
//    ui->lcdNumber->display(QString("130"));
//    ui->lcdNumber->setMode(QLCDNumber::Hex);    //设置为16进制显示
//    ui->lcdNumber->setSegmentStyle(QLCDNumber::Outline);

//    ui->lcdNumber_2->display(233.184);
//    ui->lcdNumber_2->setDigitCount(6);
//    qDebug() << ui->lcdNumber_2->digitCount();
////    ui->lcdNumber_2->setSmallDecimalPoint(true);   //在两个数字中间
//}

//Widget::Widget(QWidget *parent)
//    : QWidget(parent)
//    , ui(new Ui::Widget)
//{
//    ui->setupUi(this);
//    qTimer = new QTimer(this);  //创建QTimer的实例
//    //QTimer会定时触发一个timeout信号，我们将该信号与UpdateTime联系起来
//    //从而实现修改时间的效果
//    connect(qTimer,&QTimer::timeout,this,&Widget::UpdateTime);

//    //设置定时器的初始值为10
//    ui->lcdNumber->display(QString("abcde"));

//    //启动QTimer，每隔1000ms发送一个timeout信号
//    qTimer->start(100);

//}

//void Widget::UpdateTime()
//{
//    qDebug() << "updatetime";
//    int value = ui->lcdNumber->intValue();
//    if(value <= 0)
//    {
//        qTimer->stop(); //停止定时器
//        return;
//    }

//    ui->lcdNumber->display(value-1);
//}

//Widget::Widget(QWidget *parent)
//    : QWidget(parent)
//    , ui(new Ui::Widget)
//{
//    ui->setupUi(this);
//    ui->label->setBuddy(ui->radioButton);
//    ui->label_2->setBuddy(ui->radioButton_2);
//}

//Widget::Widget(QWidget *parent)
//    : QWidget(parent)
//    , ui(new Ui::Widget)
//{
//    ui->setupUi(this);
//    ui->label->setFrameShape(QFrame::Box);              //设置边框
//    ui->label_2->setFrameShape(QFrame::Panel);          //设置边框
//    ui->label_3->setFrameShape(QFrame::WinPanel);       //设置边框
//    ui->label_4->setFrameShape(QFrame::StyledPanel);    //设置边框

//    //也可直接使用AlignCenter
//    ui->label->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); //垂直水平居中的文本

//    ui->label_2->setAlignment(Qt::AlignRight | Qt::AlignTop);   //右对齐
//    ui->label_2->setWordWrap(true); //文本自动换行

//    ui->label_3->setIndent(20);  //设置文本缩进,水平与垂直都生效
//    ui->label_4->setMargin(50);  //内部⽂本和边框之间的边距，上下左右四个方向都生效
//}

//Widget::Widget(QWidget *parent)
//    : QWidget(parent)
//    , ui(new Ui::Widget)
//{
//    ui->setupUi(this);
//    //设置label和窗口一样大
////    QSize windowSize = this->size();
//    ui->label->setGeometry(0,0,this->width(),this->height());
//    qDebug() <<"window: " <<this->width() << " " << this->height();

//    QPixmap pixmap(":/car.png");
//    ui->label->setPixmap(pixmap);
//    qDebug() << "label: "<<ui->label->width() << " " << ui->label->height();

//    ui->label->setScaledContents(true); //设置自动拉伸

////    ui->label->setText("这是一段普通文本");
////    ui->label->setTextFormat(Qt::PlainText);

////    ui->label_2->setText("<h1>这是一段富文本</h1>");
////    ui->label_2->setTextFormat(Qt::RichText);

////    ui->label_3->setText("**这是一段markdown文本**");
////    ui->label_3->setTextFormat(Qt::MarkdownText);
//}

//// 重写 resizeEvent. 这个函数会在窗⼝⼤⼩发⽣改变时被⾃动调⽤
//void Widget::resizeEvent(QResizeEvent *event)
//{
//    // 可以直接通过 this->width() 和 this->height() 设置 label 新的尺⼨
////    ui->label->setGeometry(0,0,this->width(),this->height());

//    //也可以通过事件event拿到新的尺寸
//    ui->label->setGeometry(0,0,event->size().width(),event->size().height());

//    qDebug() << ui->label->width() << ":" << ui->label->height();
//}


